1. Field
This disclosure generally relates to displaying information in tables. More specifically, this invention relates to a technique for dynamically sizing columns in a table.
2. Related Art
Graphical user interfaces (GUIs) are widely used in software applications to present information to users, and to receive user inputs. For example, a table in a dialog box or window in a GUI may include multiple fields or cells, which present information and/or which receive user inputs.
However, there is a limited amount of real estate or space in a display, which constrains the size of a table displayed in the GUI. For example, if there is a central window in a GUI that is used to display a circuit design, the widths (or heights) of tables displayed in windows to the left and right of the central window (or above and below the central window) are typically restricted.
Furthermore, the amount of information usually varies from cell to cell in the table. For example, some of the cells may include long sequences of text, while others may have shorter sequences. It is often difficult to allocate the available space or size of the table among the columns of the table. If the longest sequence is used to determine the column sizes, many of the columns will be too wide, and the table will occupy too much real estate in the GUI. Alternatively, if all of the columns are assigned a fixed width, many of the sequences will need to be truncated. This may make it difficult for a user to understand the residual text information that is displayed.
All of these challenges are compounded in applications where the user interacts with the GUI. For example, the user may selectively change the width of the table or a specific column. If this occurs, the widths of the remaining columns will also need to be modified. Consequently, dynamically determining column sizes in a table remains a challenge in GUIs, which adversely impacts: the user experience, the usefulness of software, and thus software sales and customer retention.